package game.phases.actionphase.commands 
{
	import core.Command;
	import game.map.Unit;
	import game.unitmanager.ArmyController;
	/**
	 * ...
	 * @author rnk
	 */
	public class ScatterArmyCommand extends Command
	{
		private var routes:Array;
		private var army:ArmyController;
		
		
		public function ScatterArmyCommand(province:String,routes:Array,army:ArmyController) 
		{
			this.army = army;
			this.routes = routes.slice();
			
		}
		
		
		override public function Execute():void 
		{
			super.Execute();
			
			var moveCommands:Object = { };
			var unitList:Array = army.model.units.slice();
			for each (var item:Unit in unitList) 
			{
				var rdx:int = Math.floor(Math.random() * routes.length);
				if (!moveCommands[routes[rdx]]) 
					moveCommands[routes[rdx]] = [];
				moveCommands[routes[rdx]].push(item);
			}
			
			//create new army controllers detach them and send moving
			for each (var cmd:Object in unitList) 
			{
				//если в провинции армия то создаем только вью и пускаем ее туда мувом при достижении уничтожаем мув
				//модельки прибавляем сразу
				
				//если провинция пустая, создаем контроллер в той провинции
				//детачим его вью, двигаем в нач провинцию и мувим
			}
			
		}
	}

}